package magazzino.web.ricercaProdotto;

import magazzino.web.NameAttributes;

import to.pm.catalogo.bi.GestioneCatalogoBusiness;
import to.pm.entity.catalogo.Prodotto;

import javax.ejb.EJB;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.EventDispatchAction;


public class RicercaProdottoAction extends EventDispatchAction {

    @EJB
    private GestioneCatalogoBusiness catalogo;

    public ActionForward ricerca(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {
        log.info("RicercaProdotto:Ricerca");

       
        generaElencoProdotti((RicercaProdottoForm)form);

        return mapping.getInputForward()  ;

    }
    public ActionForward seleziona(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {
        log.info("RicercaProdotto:Seleziona");

        Long id = ((RicercaProdottoForm)form).getId();
        Prodotto prod = catalogo.findProdottoById(id);
        request.getSession().setAttribute(NameAttributes.GESTIONEPRODOTTO_PRODOTTOSELEZIONATO.name(), prod);

        log.info("id selezionato:"+id);

        return mapping.getInputForward()  ;

    }


    private void generaElencoProdotti(RicercaProdottoForm form){
        String desc = form.getNome();
        form.setProdotti(catalogo.findProdottiByDescrizione(desc));
    }


}
